home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / comm / irc / epic4-mos.lha / share / epic / script / starutils < prev    next >
Text File  |  2002-09-18  |  3KB  |  154 lines

  1. ### StarUtils.irc.epic by archon
  2. ### January 1996
  3. ### *** REQUIRES AN IRCII-EPIC CLIENT ***
  4. /* Submitted by archon on 1/25/96, archon gave me permission to tidy up */
  5.  
  6. echo [StarUtils] Loading StarUtils v1.2.EPIC by archon - lusers beware -
  7. echo [StarUtils] Type /starhelp for help!
  8.  
  9. if (!star.load) 
  10. {
  11.     eval ^set client_information $CLIENT_INFORMATION -&- StarUtils v1.2.EPIC by archon : clones beware.
  12. }
  13.  
  14. @ star.load++
  15. alias tkill star.tkill
  16. alias star.tkill 
  17. {
  18.     if ([$1] && (rmatch($0 *@*) == 1)) 
  19.     {
  20.         @ star.killrsn = [$*]
  21.         @ star.killpat = shift(star.killrsn)
  22.         @ star.killcnt = 0
  23.         star.setup
  24.         ^on ^205 *
  25.         {
  26.             @ star.killhrm = split(\[\] $3)
  27.             if (#star.killhrm == 2) 
  28.             {
  29.                 @ star.killnuh = sar(r/ /!/star.killhrm)
  30.                 if (rpattern($star.killnuh $star.killpat)) 
  31.                 {
  32.                     kill $before(! $star.killnuh) $star.killrsn
  33.                     @ star.killcnt++
  34.                 }
  35.             }
  36.             {
  37.                 echo [TraceKill] Too many brackets in $1-
  38.             }
  39.         }
  40.         trace
  41.         wait
  42.         star.cleanup
  43.         echo [TraceKill] You just wasted $star.killcnt clients.
  44.         @ star.killcnt = star.killpat = star.killrsn = star.killhrm = star.killnuh = []
  45.     }
  46.     {
  47.         echo [TraceKill] Usage: /tkill <pattern> <reason>
  48.     }
  49. }
  50.  
  51. alias tfilter star.tfilter
  52. alias star.tfilter 
  53. {
  54.     if (star.pat == [$*]) 
  55.     {
  56.         star.setup
  57.         ^on ^205 * 
  58.         {
  59.             @ star.hrm = split(\[\] $3)
  60.             if (#star.hrm == 2) 
  61.             {
  62.                 @ star.nuh = sar(r/ /!/star.hrm)
  63.                 if (rpattern($star.nuh $star.pat)) 
  64.                 {
  65.                     echo [TraceFilter] $1-
  66.                 }
  67.             }
  68.             {
  69.                 echo [TraceFilter] Too many brackets in $1-
  70.             }
  71.         }
  72.         trace
  73.         wait
  74.         star.cleanup
  75.         @ star.pat = star.hrm = star.nuh = []
  76.     }
  77.     {
  78.         echo [TraceFilter] Usage: /tfilter <pattern>
  79.     }
  80. }
  81.  
  82. alias mkill star.mkill
  83. alias star.mkill 
  84. {
  85.     if (match(! $*)) 
  86.     {
  87.         @ star.killdo = before(! $*)
  88.         @ star.killrsn = after(! $*)
  89.         fe ($star.killdo) x 
  90.         {
  91.             kill $x $star.killrsn
  92.         }
  93.         @ star.killdo = star.killrsn = []
  94.     }
  95.     {
  96.         echo [MultiKill] Usage: /mkill nick1 nick2 nick3.. ! reason
  97.     }
  98. }
  99.  
  100. alias starhelp star.help
  101. alias star.help 
  102. {
  103.     echo *** TKILL <pattern> <reason>
  104.     echo ***       Kills all nick!user@hosts on your server matching <pattern>
  105.     echo *** TFILTER <pattern>
  106.     echo ***       Returns nick!user@hosts on your server matching <pattern>
  107.     echo *** MKILL <nick1> <nick2> <nick3>... ! <reason>
  108.     echo ***       Kills each nick specified before the ! with <reason>
  109. }
  110.  
  111. alias star.setup
  112. {
  113.     stack push on 203
  114.     stack push on 204
  115.     stack push on 205
  116.     stack push on 206
  117.     stack push on 209
  118.     ^on ^203 *
  119.     ^on ^204 *
  120.     ^on ^205 *
  121.     ^on ^206 *
  122.     ^on ^209 *
  123. }
  124.  
  125. alias star.cleanup
  126. {
  127.     stack pop on 203
  128.     stack pop on 204
  129.     stack pop on 205
  130.     stack pop on 206
  131.     stack pop on 209
  132. }
  133.  
  134. alias star.unload 
  135. {
  136.     alias_purge star
  137.     assign_purge star
  138.     alias -tkill
  139.     alias -tfilter
  140.     alias -mkill
  141. }
  142.  
  143. # general aliases not specific to this script
  144. alias alias_purge {
  145.     foreach -$0 ii {alias_purge $0.$ii}
  146.     ^alias -$0
  147. }
  148. alias assign_purge {
  149.     foreach $0 ii {assign_purge $0.$ii}
  150.     @ $0 = ii = []
  151. }
  152.  
  153. #archon'96
  154.